package com.xdcplus.web.service.bd;

import com.xdcplus.mp.service.BaseService;
import com.xdcplus.pager.vo.PageVO;
import com.xdcplus.web.common.pojo.dto.bd.BdMaterialFilterDTO;
import com.xdcplus.web.common.pojo.entity.bd.BdMaterial;
import com.xdcplus.web.common.pojo.vo.bd.BdMaterialVO;

import java.util.List;


/**
 * 物料表(BdMaterial)表服务接口层
 *
 * @author Fish.Fei
 * @since 2023-02-02 15:45:47
 */
public interface BdMaterialService extends BaseService<BdMaterial, BdMaterial, BdMaterialVO> {

    /**
     * 批量保存或更新物料表(BdMaterial)
     *
     * @param bdMaterialList 物料表(BdMaterialList)
     * @return {@link Boolean} 是否成功
     */
    Boolean saveOrUpdateBatch(List<BdMaterial> bdMaterialList);

    /**
     * 查询一个
     *
     * @param id 物料表(BdMaterial)主键
     * @return {@link BdMaterialVO} 物料表(BdMaterial)信息
     */
    BdMaterialVO queryBdMaterialById(Long id);

    /**
     * 查询物料表(BdMaterial)
     *
     * @param bdMaterialFilterDTO 过程状态过滤DTO
     * @return {@link PageVO <BdMaterialVO>} 状态信息
     */
    List<BdMaterialVO> queryBdMaterialVOList(BdMaterialFilterDTO bdMaterialFilterDTO);

}
